Skip to content

Compliance checker#19

Merged
dmartinol merged 10 commits into
RHEcosystemAppEng:mainfrom
dmartinol:compliance_checker
Feb 26, 2026
Merged

Compliance checker#19
dmartinol merged 10 commits into
RHEcosystemAppEng:mainfrom
dmartinol:compliance_checker

Conversation

@dmartinol

Copy link
Copy Markdown
Collaborator

Summary

This pull request introduces a comprehensive skill design compliance validation workflow for the repository, ensuring that all skills adhere to defined design principles. It adds new Makefile targets, CI integration, and documentation to automate and clarify the validation process for both local development and continuous integration. The changes also update references across documentation and templates to point to the new source of design principles.

Skill Design Compliance Validation:

  • Added a new .claude/skills/compliance-checker/SKILL.md documenting the compliance checker skill, detailing when and how to use it, dependencies, and the design principles it checks.
  • Introduced the scripts/ci-validate-changed-skills.sh script to validate only changed skills in CI or local development, improving efficiency and developer experience.
  • Updated the Makefile with validate-skill-design and validate-skill-design-changed targets for full and incremental validation, respectively, including help text and integration with the new script.

Continuous Integration Improvements:

  • Renamed the CI workflow to compliance-check.yml, added a job to run skill design validation only on changed skills, and ensured the workflow fetches the full git history for accurate diffing.

Documentation and Reference Updates:

  • Updated README.md to document the new validation commands, when to use them, and which design principles are enforced.
  • Changed all references from CLAUDE.md to SKILL_DESIGN_PRINCIPLES.md in documentation, skill templates, and instructions to ensure consistency and clarity.

Miscellaneous:

  • Added .cursor/skills entry to track the new skills directory.

These changes collectively ensure that skill design compliance is automated, well-documented, and integrated into both developer workflows and CI, raising the quality and consistency of skills in the repository.

Pack(s) affected

  • rh-sre
  • rh-developer
  • ocp-admin
  • rh-support-engineer
  • rh-virt
  • Other / repo-wide

Change type

  • New skill
  • New agent
  • New pack
  • Update existing skill / agent
  • MCP server config (.mcp.json)
  • Docs / README
  • CI / tooling

CLAUDE.md compliance

  • Agents orchestrate skills; no direct MCP/tool calls in agents
  • Skills are single-purpose task executors
  • Skills encapsulate all tool access (MCP tools invoked only inside skills)
  • Document consultation: file is read with the Read tool, then declared to the user
  • No credentials hardcoded; env vars used via ${VAR} references
  • Human-in-the-loop confirmation added for any destructive or critical operations

Validation

  • make validate passes locally
  • New/changed skills have valid YAML frontmatter (name, description)
  • New/changed agents have valid YAML frontmatter (name, description)

Signed-off-by: Daniele Martinoli <dmartino@redhat.com>
Signed-off-by: Daniele Martinoli <dmartino@redhat.com>
Signed-off-by: Daniele Martinoli <dmartino@redhat.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request introduces automated skill design compliance validation to ensure all skills adhere to the design principles defined in the newly created SKILL_DESIGN_PRINCIPLES.md file. The validation runs automatically in CI for changed skills and provides local development commands for validating all or changed skills.

Changes:

  • Extracted design principles from CLAUDE.md into a dedicated SKILL_DESIGN_PRINCIPLES.md file
  • Added Python validation script and shell script for CI integration to automate compliance checking
  • Updated all references across documentation and templates to point to the new design principles file

Reviewed changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
scripts/validate_skill_design.py New Python script implementing automated checks for all 7 design principles
scripts/ci-validate-changed-skills.sh Shell script to validate only changed skills in CI and local development
SKILL_DESIGN_PRINCIPLES.md New file containing extracted design principles from CLAUDE.md
README.md Added documentation for new validation commands and design principles
Makefile Added validate-skill-design and validate-skill-design-changed targets
CLAUDE.md Removed design principles content, replaced with reference to new file
.github/workflows/validate-packs.yml Renamed job, added skill design validation step with git history fetch
rh-virt/SKILL_TEMPLATE.md Updated references from CLAUDE.md to SKILL_DESIGN_PRINCIPLES.md
.github/copilot-instructions.md Updated design principles reference
.cursor/skills Added symlink to .claude/skills directory
.claude/skills/compliance-checker/SKILL.md New skill for running compliance validation

Comment thread scripts/validate_skill_design.py
Comment thread scripts/validate_skill_design.py
Comment thread scripts/ci-validate-changed-skills.sh Outdated
Comment thread SKILL_DESIGN_PRINCIPLES.md Outdated
Comment thread README.md Outdated
@dmartinol dmartinol requested a review from ikrispin February 26, 2026 12:34
- Updated CLAUDE.md to clarify YAML frontmatter requirements, including optional metadata fields.
- Revised README.md by removing legacy model field skip instructions.
- Expanded SKILL_DESIGN_PRINCIPLES.md with details on root-level frontmatter and standard color values.
- Modified compliance-checker SKILL.md to improve clarity in usage instructions and workflow.
- Updated copilot-instructions.md to reflect new frontmatter requirements.
- Adjusted SKILL_TEMPLATE.md to include new metadata fields and color options.
- Enhanced validate_skill_design.py to enforce new frontmatter rules and remove legacy model handling.

Signed-off-by: Daniele Martinoli <dmartino@redhat.com>
@dmartinol dmartinol requested a review from Copilot February 26, 2026 12:55

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 11 out of 11 changed files in this pull request and generated 5 comments.

Comment thread scripts/validate_skill_design.py
Comment thread scripts/validate_skill_design.py
Comment thread scripts/validate_skill_design.py
Comment thread SKILL_DESIGN_PRINCIPLES.md Outdated
Comment thread rh-virt/SKILL_TEMPLATE.md Outdated
dmartinol and others added 2 commits February 26, 2026 14:04
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Daniele Martinoli <dmartino@redhat.com>
@dmartinol dmartinol requested a review from Copilot February 26, 2026 13:11
dmartinol and others added 2 commits February 26, 2026 14:11
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 13 out of 14 changed files in this pull request and generated 2 comments.

Comment thread scripts/validate_skill_design.py
Comment thread Makefile
dmartinol and others added 2 commits February 26, 2026 14:14
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@dmartinol dmartinol merged commit 0612e8b into RHEcosystemAppEng:main Feb 26, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants